package com.anolesoft.yr.mbus.part.service;

import com.anolesoft.yr.mbus.part.dto.PartModelDTO;
import com.anolesoft.yr.mbus.part.dto.PartModelTreeDynamicQueryDTO;
import com.anolesoft.yr.mbus.part.dto.PartModelTreeQueryDTO;
import com.anolesoft.yr.util.PageData;

import java.util.List;
import java.util.Optional;

/**
 * @author zhj
 * @date 2020/8/11 15:47
 */
public interface PartModelService {
    int create(PartModelDTO partModelDTO);

    int modify(PartModelDTO partModelDTO);

    int remove(String id);
    int removeBatch(List<String> ids);

    List<PartModelDTO> selectAll();

    PageData<List<PartModelDTO>> selectAll(Integer limit, Integer curr);

    Optional<PartModelDTO> selectOneById(String id);

    List<PartModelDTO> selectList(PartModelDTO partModelDTO);

    PageData<List<PartModelDTO>> selectList(PartModelDTO partModelDTO, Integer limit, Integer curr);

    PageData<List<PartModelDTO>> selectComboxList(PartModelDTO partModelDTO, Integer limit, Integer curr);

    List<PartModelTreeQueryDTO> getTree(String parentId);

    List<PartModelTreeDynamicQueryDTO> getDynamicTree(String partentId);

    PageData<List<PartModelTreeDynamicQueryDTO>> getDynamicTreePage(String partentId, Integer limit, Integer curr);
}
